<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <style>
    
  </style>
</head>
<body>
  
</body>
<script>

  // const s = new Set([7, 5, 6]);

  // 向set添加数据
  // s.add("5")
  // s.add(7)
  // s.add(6)
  // s.add("hello")
  
  // console.log(s);
  // console.log(typeof s);

  // set没有索引和length
  // console.log(s[0]);
  // console.log(s[1]);
  // console.log(s[2]);
  // console.log(s.length);

  // set使用size表示自身数据个数
  // console.log( s.size );

  // 遍历set
  // for(let i of s){
  //   console.log(i);
  // }

  // set也是特殊的map
  // console.log( s.keys() )
  // console.log( s.values() )

  // 最大的特点：无重复

  // 数组去重
  // const arr = [3,4,5,6,5,4,3,3,4,5,6,6,6];
  // const a = [...new Set(arr)];
  // console.log(a)


  // ========

  // const m = new Map([["name", "admin"],["age", 18],["sex", "男"]]);

  // 向map添加数据
  // m.set("hobby", ["篮球","足球"])

  // console.log(m);
  // console.log(typeof m);

  // 根据指定的名字值获取数据值
  // console.log( m.get("name") );
  // console.log( m.get("age") );
  // console.log( m.get("sex") );

  // 遍历map
  // for(let i of m){
  //   console.log(i);
  // }

  // 单独获取作为名字的值
  // console.log( m.keys() )
  // for(let i of m.keys()){
  //   console.log(i);
  // }
  // 单独获取作为值的值
  // console.log( m.values() )
  // for(let i of m.values()){
  //   console.log(i);
  // }

  // console.log( m.entries() );



  // ==========

  // const obj = {name:"admin",age:19}
  // const arr = [4,5,6]
  // const s = new Set(arr);
  // const m = new Map([["a",10],["b",20]]);

  // console.log(obj)
  // console.log(arr)
  // console.log(s)
  // console.log(m)

  // for-in遍历的是键（索引也是特殊的键）
  // for(let i in obj){
  //   console.log(i)
  // }
  // for(let i in arr){
  //   console.log(typeof i)
  // }
    
  // 因为set和map没有键，只有值，所以不能使用for-in遍历
  // for(let i in s){
  //   console.log(i)
  // }
  // for(let i in m){
  //   console.log(i)
  // }
  

  // for-of遍历的是值
  // for(let i of arr){
  //   console.log(i)
  // }
  // for-of无法遍历对象，检测不到对象的值
  // for(let i of obj){
  //   console.log(i)
  // }

  // for(let i of s){
  //   console.log(i)
  // }
  // for(let i of m){
  //   console.log(i)
  // }



  
</script>
</html>